import { DataTypes, Model } from 'sequelize'
import sequelize from './db'

export interface ISiteConfig {
    id: number
    configKey: string
    configValue: any
}

class SiteConfig extends Model {
    declare id: number
    declare configKey: string
    declare configValue: any
}

SiteConfig.init(
    {
        id: {
            type: DataTypes.INTEGER,
            primaryKey: true,
            autoIncrement: true,
        },
        configKey: {
            type: DataTypes.STRING,
            comment: '配置key',
        },
        configValue: {
            type: DataTypes.JSON,
            comment: '配置内容',
        },
    },
    {
        // 这是其他模型参数
        sequelize, // 我们需要传递连接实例
        modelName: 'siteconfig', // 我们需要选择模型名称
        paranoid: true,
    }
)

export default SiteConfig
